<?xml version='1.0' encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <link href="cpip.css" rel="stylesheet" type="text/css" />
    <title>File: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/posix_types.h</title>
  </head>
  <body>
    <h1>File: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/posix_types.h</h1>
    <p>Green shading in the line number column
means the source is part of the translation unit, red means it is conditionally excluded.
Highlighted line numbers link to the translation unit page. Highlighted macros link to
the macro page.</p>
    <pre><a name="1" /><span class="True">       1:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_noref.html#_X0xJTlVYX1BPU0lYX1RZUEVTX0hfMA__"><span class="b">_LINUX_POSIX_TYPES_H</span></a>
<a name="2" /><span class="True">       2:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X0xJTlVYX1BPU0lYX1RZUEVTX0hfMA__"><span class="b">_LINUX_POSIX_TYPES_H</span></a>
<a name="3" /><span class="True">       3:</span> 
<a name="4" /><span class="True">       4:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="b">linux</span><span class="f">/</span><span class="b">stddef</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="5" /><span class="True">       5:</span> 
<a name="6" /><span class="True">       6:</span> <span class="k">/*</span>
<a name="7" /><span class="True">       7:</span> <span class="k"> * This allows for 1024 file descriptors: if NR_OPEN is ever grown</span>
<a name="8" /><span class="True">       8:</span> <span class="k"> * beyond that you&apos;ll have to change this too. But 1024 fd&apos;s seem to be</span>
<a name="9" /><span class="True">       9:</span> <span class="k"> * enough even for such &quot;real&quot; unices like OSF/1, so hopefully this is</span>
<a name="10" /><span class="True">      10:</span> <span class="k"> * one limit that doesn&apos;t have to be changed [again].</span>
<a name="11" /><span class="True">      11:</span> <span class="k"> *</span>
<a name="12" /><span class="True">      12:</span> <span class="k"> * Note that POSIX wants the FD_CLEAR(fd,fdsetp) defines to be in</span>
<a name="13" /><span class="True">      13:</span> <span class="k"> * &lt;sys/time.h&gt; (and thus &lt;linux/time.h&gt;) - but this is a more logical</span>
<a name="14" /><span class="True">      14:</span> <span class="k"> * place for them. Solved by having dummy defines in &lt;sys/time.h&gt;.</span>
<a name="15" /><span class="True">      15:</span> <span class="k"> */</span>
<a name="16" /><span class="True">      16:</span> 
<a name="17" /><span class="True">      17:</span> <span class="k">/*</span>
<a name="18" /><span class="True">      18:</span> <span class="k"> * This macro may have been defined in &lt;gnu/types.h&gt;. But we always</span>
<a name="19" /><span class="True">      19:</span> <span class="k"> * use the one here.</span>
<a name="20" /><span class="True">      20:</span> <span class="k"> */</span>
<a name="21" /><span class="True">      21:</span> <span class="f">#</span><span class="n">undef</span> <a href="cpu.c_macros_ref.html#_X19GRF9TRVRTSVpFXzA_"><span class="b">__FD_SETSIZE</span></a>
<a name="22" /><span class="True">      22:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_ref.html#_X19GRF9TRVRTSVpFXzA_"><span class="b">__FD_SETSIZE</span></a>    <span class="c">1024</span>
<a name="23" /><span class="True">      23:</span> 
<a name="24" /><span class="True">      24:</span> <span class="m">typedef</span> <span class="m">struct</span> <span class="f">{</span>
<a name="25" /><span class="True">      25:</span>     <span class="m">unsigned</span> <span class="m">long</span> <span class="b">fds_bits</span><span class="f">[</span><a href="cpu.c_macros_ref.html#_X19GRF9TRVRTSVpFXzA_"><span class="b">__FD_SETSIZE</span></a> <span class="f">/</span> <span class="f">(</span><span class="c">8</span> <span class="f">*</span> <span class="m">sizeof</span><span class="f">(</span><span class="m">long</span><span class="f">)</span><span class="f">)</span><span class="f">]</span><span class="f">;</span>
<a name="26" /><span class="True">      26:</span> <span class="f">}</span> <span class="b">__kernel_fd_set</span><span class="f">;</span>
<a name="27" /><span class="True">      27:</span> 
<a name="28" /><span class="True">      28:</span> <span class="k">/* Type of a signal handler.  */</span>
<a name="29" /><span class="True">      29:</span> <span class="m">typedef</span> <span class="m">void</span> <span class="f">(</span><span class="f">*</span><span class="b">__kernel_sighandler_t</span><span class="f">)</span><span class="f">(</span><span class="m">int</span><span class="f">)</span><span class="f">;</span>
<a name="30" /><span class="True">      30:</span> 
<a name="31" /><span class="True">      31:</span> <span class="k">/* Type of a SYSV IPC key.  */</span>
<a name="32" /><span class="True">      32:</span> <span class="m">typedef</span> <span class="m">int</span> <span class="b">__kernel_key_t</span><span class="f">;</span>
<a name="33" /><span class="True">      33:</span> <span class="m">typedef</span> <span class="m">int</span> <span class="b">__kernel_mqd_t</span><span class="f">;</span>
<a name="34" /><span class="True">      34:</span> 
<a name="35" /><span class="True">      35:</span> <span class="f">#</span><span class="n">include</span> <span class="f">&lt;</span><span class="m">asm</span><span class="f">/</span><span class="b">posix_types</span><span class="f">.</span><span class="b">h</span><span class="f">&gt;</span>
<a name="36" /><span class="True">      36:</span> 
<a name="37" /><span class="True">      37:</span> <span class="f">#</span><span class="n">endif</span> <span class="k">/* _LINUX_POSIX_TYPES_H */</span>
<a name="38" /><span class="True">      38:</span> </pre>
  </body>
</html>
